package com.dingding.service.user.core.login.service;

import com.dingding.common.core.beans.UserLogin;

/**
 * 
 * @ClassName: IUserLoginService 
 * @Description: 用户登录Service
 * @author CHEHAUNBO 
 * @date 2016年7月25日 下午4:47:24
 * @since V2.3.2
 * 
 */
public interface IUserLoginService {

	/**
	 * 
	 * 用户注册，系统内部调用
	 * 
	 * 描述：此方法只能在系统内使用，例如：后台爬取数据自动注册用户
	 * 
	 * @Title: userLogin 
	 * @param userTelPhone 用户手机号
	 * @return boolean true 成功 false 失败
	 * @author CHEHAUNBO
	 * 
	 */
	public boolean userRegister(String userTelPhone);

	/**
	 * 
	 * @Title: getUserLoginInfoById 
	 * @param userTelPhone 用户手机号
	 * @return UserLogin 获取用户登录信息
	 * @author CHEHAUNBO
	 * @since V2.3.2
	 * 
	 */
	public UserLogin getUserLoginInfoByTelPhone(String userTelPhone);

	/**
	 * 添加用户,无微信ID
	 * 
	 * @Title: addUser
	 * @param userTelphone 用户手机号
	 * @return boolean true 成功 false 失败
	 * @author CHEHAUNBO
	 * @since V2.3.2
	 * 
	 */
	public boolean addUser(String userTelphone);

	/**
	 * 
	 * @Title: addUser 
	 * @param userTelphone 用户手机号
	 * @param weChartId 微信ID
	 * @author CHEHAUNBO
	 * @since V2.3.2
	 * 
	 */
	public boolean addUser(String userTelphone, String weChartId);
	
	/**
	 * @Description:通过手机号获取用户的id
	 * @author fengshuonan
	 * @since 2.3.2
	 */
	public String getUserIdByNumber(String tellphone);
	
	
	/**
	 * @Description:同步订单根据发单类型，和发单人的手机号，修改发单人的乘客角色
	 * @param publisherType 发单类型（1:司机发单   2:乘客发单）
	 * @param tellphone 电话号码
	 * @author fengshuonan
	 * @since 2.3.2
	 */
	public boolean changeSyncorderPublisherRole(Integer publisherType, String tellphone);

}
